package strategy;
//테스트 클래스에서는 Seller의 sell()을 호출하지 않습니다. 
//Mart의 order()를 호출합니다. Seller의 메쏘드는 외부로 공개되지 않습니다. 
//Mart 클래스가 여기서는 외부로 공개되는 Context가 됩니다. Mart는 멤버 변수로 Seller를 가집니다. 
//Mart에서 가지는 Seller를 바꿔치기함으로써 Mart의 order()에서 실제 실행되는 로직이 달라질 수 있습니다.
public class SellerTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Seller cupSeller = new CupSeller();
		Seller phoneSeller = new PhoneSeller();
		Mart mart = new Mart(cupSeller);
		mart.order();
		Mart mart2 = new Mart(phoneSeller);
		mart2.order();

	}

}
